[INFO] cloning repository https://github.com/javicoderh/rust_llm_server
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/javicoderh/rust_llm_server" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjavicoderh%2Frust_llm_server", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjavicoderh%2Frust_llm_server'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6434969ed5ea248ce1e71dc08bc5424774187d39
[INFO] testing javicoderh/rust_llm_server against try#b8e88e5ddf5521a9f43ee3f62a702388c713e4bb for pr-155114
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjavicoderh%2Frust_llm_server" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/javicoderh/rust_llm_server
[INFO] finished tweaking git repo https://github.com/javicoderh/rust_llm_server
[INFO] tweaked toml for git repo https://github.com/javicoderh/rust_llm_server written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/javicoderh/rust_llm_server on toolchain b8e88e5ddf5521a9f43ee3f62a702388c713e4bb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/javicoderh/rust_llm_server already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 7fb42a0cdffa445652bfddb7adff3c8f079d5be493f058ad5dc18d40fb4eedbd
[INFO] running `Command { std: "docker" "start" "-a" "7fb42a0cdffa445652bfddb7adff3c8f079d5be493f058ad5dc18d40fb4eedbd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "7fb42a0cdffa445652bfddb7adff3c8f079d5be493f058ad5dc18d40fb4eedbd", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7fb42a0cdffa445652bfddb7adff3c8f079d5be493f058ad5dc18d40fb4eedbd", kill_on_drop: false }`
[INFO] [stdout] 7fb42a0cdffa445652bfddb7adff3c8f079d5be493f058ad5dc18d40fb4eedbd
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cc7d8395d4a158ace115e1d6ef2217e5a21cdb9bf82874ec23f7cd7d792e6371
[INFO] running `Command { std: "docker" "start" "-a" "cc7d8395d4a158ace115e1d6ef2217e5a21cdb9bf82874ec23f7cd7d792e6371", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling tracing-core v0.1.35
[INFO] [stderr]    Compiling cc v1.2.47
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling sync_wrapper v1.0.2
[INFO] [stderr]    Compiling native-tls v0.2.14
[INFO] [stderr]    Compiling tinyvec v1.10.0
[INFO] [stderr]    Compiling openssl-probe v0.1.6
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling unicode-bidi v0.3.18
[INFO] [stderr]    Compiling serde_json v1.0.145
[INFO] [stderr]    Compiling iri-string v0.7.9
[INFO] [stderr]    Compiling serde_path_to_error v0.1.20
[INFO] [stderr]    Compiling rustls-pki-types v1.13.0
[INFO] [stderr]    Compiling dotenvy v0.15.7
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling unicode-normalization v0.1.25
[INFO] [stderr]    Compiling rand_core v0.9.3
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling hmac v0.12.1
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling tracing-log v0.2.0
[INFO] [stderr]    Compiling rand v0.9.2
[INFO] [stderr]    Compiling idna v0.5.0
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling openssl-sys v0.9.111
[INFO] [stderr]    Compiling url v2.5.0
[INFO] [stderr]    Compiling openssl v0.10.75
[INFO] [stderr]    Compiling tokio-macros v2.6.0
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]    Compiling uuid-macro-internal v1.18.1
[INFO] [stderr]    Compiling uuid v1.18.1
[INFO] [stderr]    Compiling tokio v1.48.0
[INFO] [stderr]    Compiling tracing v0.1.42
[INFO] [stderr]    Compiling axum-core v0.5.5
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling serde_urlencoded v0.7.1
[INFO] [stderr]    Compiling tracing-serde v0.2.0
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling tracing-subscriber v0.3.20
[INFO] [stderr]    Compiling tokio-util v0.7.17
[INFO] [stderr]    Compiling tower v0.5.2
[INFO] [stderr]    Compiling tokio-native-tls v0.3.1
[INFO] [stderr]    Compiling h2 v0.4.12
[INFO] [stderr]    Compiling tower-http v0.6.7
[INFO] [stderr]    Compiling hyper v1.8.1
[INFO] [stderr]    Compiling hyper-util v0.1.18
[INFO] [stderr]    Compiling hyper-tls v0.6.0
[INFO] [stderr]    Compiling axum v0.8.7
[INFO] [stderr]    Compiling reqwest v0.12.24
[INFO] [stderr]    Compiling rust-llm-api v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "cc7d8395d4a158ace115e1d6ef2217e5a21cdb9bf82874ec23f7cd7d792e6371", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cc7d8395d4a158ace115e1d6ef2217e5a21cdb9bf82874ec23f7cd7d792e6371", kill_on_drop: false }`
[INFO] [stdout] cc7d8395d4a158ace115e1d6ef2217e5a21cdb9bf82874ec23f7cd7d792e6371
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] bae0e1bc171f2e8485954b5b0150c5ed79030bc2e7322f1a0ded4a59d55d5dd5
[INFO] running `Command { std: "docker" "start" "-a" "bae0e1bc171f2e8485954b5b0150c5ed79030bc2e7322f1a0ded4a59d55d5dd5", kill_on_drop: false }`
[INFO] [stderr]    Compiling rust-llm-api v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 38.53s
[INFO] running `Command { std: "docker" "inspect" "bae0e1bc171f2e8485954b5b0150c5ed79030bc2e7322f1a0ded4a59d55d5dd5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bae0e1bc171f2e8485954b5b0150c5ed79030bc2e7322f1a0ded4a59d55d5dd5", kill_on_drop: false }`
[INFO] [stdout] bae0e1bc171f2e8485954b5b0150c5ed79030bc2e7322f1a0ded4a59d55d5dd5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 3531e51bc86297de0b28a27a8d96695928529db615733eda8e74d3c80e17c0fa
[INFO] running `Command { std: "docker" "start" "-a" "3531e51bc86297de0b28a27a8d96695928529db615733eda8e74d3c80e17c0fa", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.25s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/rust_llm_api-0d8030ae24c34b93)
[INFO] [stdout] 
[INFO] [stdout] running 59 tests
[INFO] [stdout] test routes::payments::tests::parse_signature_header_ok ... ok
[INFO] [stdout] test models::workshop_creation_helper::tests::can_finalize_requires_email_confirmation_when_step_exists ... ok
[INFO] [stdout] test models::workshop_creation_helper::tests::can_finalize_allows_when_review_generate_and_email_confirmed ... ok
[INFO] [stdout] test routes::payments::tests::validate_mercadopago_signature_ok ... ok
[INFO] [stdout] test routes::payments::tests::validate_mercadopago_signature_rejects_invalid_v1 ... ok
[INFO] [stdout] test services::autopatch::tests::choose_patch_target_fails_when_no_valid_piece_ids ... ok
[INFO] [stdout] test services::oat_catalog::tests::hxx_code_regex ... ok
[INFO] [stdout] test services::patcher::tests::select_prompt_accepts_legacy_v1_piece_ids ... ok
[INFO] [stdout] test services::autopatch::tests::choose_patch_target_returns_v3_piece_id ... ok
[INFO] [stdout] test services::patcher::tests::select_prompt_unknown_piece_fails_with_stable_code ... ok
[INFO] [stdout] test services::workshop_helper::session_service::tests::applies_cta_label_fallback_after_second_attempt ... ok
[INFO] [stdout] test services::workshop_helper::session_service::tests::applies_mandatory_activities_fallback_after_third_attempt ... ok
[INFO] [stdout] test services::workshop_helper::instrument_logic::tests::reconcile_instrumentos_falls_back_to_auto_strategy ... ok
[INFO] [stdout] test services::patcher::tests::select_prompt_maps_known_piece_ids_without_fallback ... ok
[INFO] [stdout] test services::workshops_v3::tests::build_v3_generation_prompt_ids_use_v3_prefix ... ok
[INFO] [stdout] test services::oat_catalog::tests::parse_course_aliases ... ok
[INFO] [stdout] test services::workshop_helper::session_service::tests::llm_failure_accepts_without_retry_when_rule_says_so ... ok
[INFO] [stdout] test services::workshop_helper::session_service::tests::llm_failure_retries_with_default_partial_valid_suggestions ... ok
[INFO] [stdout] test services::patcher::tests::plan_patch_shape_can_merge_plan_plus_patch_summary ... ok
[INFO] [stdout] test services::workshops_v3::tests::done_piece_meta_never_sets_used_fallback_true ... ok
[INFO] [stdout] test services::workshops_v3::tests::resolve_prompt_strict_errors_with_stable_code_when_missing ... ok
[INFO] [stdout] test services::workshop_helper::instrument_logic::tests::reconcile_instrumentos_uses_llm_normalized_answer_when_parseable ... ok
[INFO] [stdout] test services::workshop_helper::session_service::tests::llm_failure_escalates_when_attempt_limit_is_reached ... ok
[INFO] [stdout] test services::workshops_v3::tests::build_v3_threshold_wiring_uses_request_value_and_clamp ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::inspector_unit_aggregates_sessions_and_instruments ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::modalidad_default_maps_keywords ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::normalize_actividad_tiempo_scales_to_budget ... ok
[INFO] [stdout] test services::workshops_v3::tests::v3_piece_ids_use_v3_suffix ... ok
[INFO] [stdout] test services::workshops_v3::tests::v3_core_prompt_ids_resolve ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::normalize_instrument_structure_converts_legacy_flat_rubric_into_criteria ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::normalize_session_objectives_adds_measurable_verb_prefix ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::normalize_instrument_structure_respects_written_distribution ... ok
[INFO] [stdout] test services::workshops_v4::workshops_v4_tests::taxonomy_guidance_uses_free_inference_strategy ... ok
[INFO] [stdout] test services::workshops_v5::rewrite::tests::choose_instrument_patch_targets_degrades_to_whole_instrument_when_too_many_targets ... ok
[INFO] [stdout] test services::workshops_v5::rewrite::tests::choose_instrument_patch_targets_maps_distractor_issue_to_item_distractor ... ok
[INFO] [stdout] test services::workshops_v5::rewrite::tests::choose_patch_strategy_prefers_instruments_when_only_instrument_sources_exist ... ok
[INFO] [stdout] test services::workshops_v5::rewrite::tests::choose_patch_strategy_uses_mixed_route_when_both_sources_exist ... ok
[INFO] [stdout] test services::workshops_v5::rewrite::tests::instrument_patch_target_json_is_stable_and_structured ... ok
[INFO] [stdout] test services::workshops_v5::rewrite::tests::instrument_patch_target_kind_reports_expected_label ... ok
[INFO] [stdout] test services::workshops_v5::static_checks::tests::instrument_static_report_detects_answer_leakage_between_items ... ok
[INFO] [stdout] test services::workshops_v5::tests::detects_flattened_rubric_matrix_pattern ... ok
[INFO] [stdout] test services::workshops_v5::tests::raw_macro_shape_rejects_more_than_two_transversals ... ok
[INFO] [stdout] test services::workshops_v5::tests::raw_shape_rejects_string_actividad_rubrica ... ok
[INFO] [stdout] test services::workshops_v5::tests::raw_macro_shape_accepts_empty_transversals_and_zero_instruments ... ok
[INFO] [stdout] test services::workshops_v5::tests::placeholder_errors_are_non_blocking_for_pipeline_progression ... ok
[INFO] [stdout] test services::writer_v4::tests::render_rubrica_table_supports_criteria_based_rubrics ... ok
[INFO] [stdout] test services::writer_v4::tests::render_rubrica_table_collapses_flattened_criteria_matrix ... ok
[INFO] [stdout] test services::workshops_v5::tests::strict_plan_shape_rejects_activity_mode_without_actividad_rubrica ... ok
[INFO] [stdout] test services::workshops_v5::static_checks::tests::static_inspection_report_embeds_global_instrument_paths ... ok
[INFO] [stdout] test services::workshops_v5::tests::strict_plan_shape_accepts_matching_written_distribution ... ok
[INFO] [stdout] test services::workshops_v5::static_checks::tests::instrument_static_report_detects_duplicate_distractors_and_subjective_rubric ... ok
[INFO] [stdout] test services::writer_v5::tests::removes_symbolic_surf_wording_from_rendered_output ... ok
[INFO] [stdout] test services::workshops_v5::tests::strict_plan_shape_rejects_placeholder_content ... ok
[INFO] [stdout] test services::workshops_v5::tests::strict_plan_shape_rejects_written_distribution_mismatch ... ok
[INFO] [stdout] test services::writer_v5::tests::detailed_index_main_sections_do_not_repeat_manual_numbers ... ok
[INFO] [stdout] test services::llm::tests::v5_session_ids_all_map_to_json_schema_response_format ... ok
[INFO] [stdout] test services::llm::tests::v5_schemas_allow_empty_transversals_and_zero_instruments_when_flow_allows_it ... ok
[INFO] [stdout] test routes::workshops::tests::v4_route_is_not_exposed_by_default ... ok
[INFO] [stdout] test routes::workshops::tests::v4_route_is_exposed_when_compat_flag_is_enabled ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 59 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/backfill_escalated_user_ids.rs (/opt/rustwide/target/debug/deps/backfill_escalated_user_ids-d1d051eb9f4f9099)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/inspect_firestore_workshops.rs (/opt/rustwide/target/debug/deps/inspect_firestore_workshops-d887221e77ed8b94)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/normalize_oat_catalog.rs (/opt/rustwide/target/debug/deps/normalize_oat_catalog-c8d5c3e40b5b83cc)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/oat_snapshot.rs (/opt/rustwide/target/debug/deps/oat_snapshot-e758494262c1fa7e)
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/regenerate_saved_output_writer_only.rs (/opt/rustwide/target/debug/deps/regenerate_saved_output_writer_only-62644c1a9e98e741)
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/rerun_workshop_input.rs (/opt/rustwide/target/debug/deps/rerun_workshop_input-44052a8e77f76b43)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/rust_llm_api-85fe1149494241ea)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/bin/test_e2e.rs (/opt/rustwide/target/debug/deps/test_e2e-bae508d9090c584e)
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/build_v2_smoke.rs (/opt/rustwide/target/debug/deps/build_v2_smoke-cf8b025aee1a884c)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test build_v2_smoke ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/build_v3_smoke.rs (/opt/rustwide/target/debug/deps/build_v3_smoke-5a721179c9b21c40)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]      Running tests/exporter_v3_golden.rs (/opt/rustwide/target/debug/deps/exporter_v3_golden-cdb1c5651e878b70)
[INFO] [stdout] test build_v3_smoke ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test reviewed_fixture_rubric_levels_must_be_observable_and_non_empty ... ok
[INFO] [stdout] test export_readme_v3_exit_criteria_should_not_be_missing ... ok
[INFO] [stdout] test export_readme_v3_full_golden ... ok
[INFO] [stdout] test export_readme_v3_core_sections_should_not_show_no_provisto ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/helper_regression.rs (/opt/rustwide/target/debug/deps/helper_regression-1b2ca4f1d59f8b2b)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test helper_session_creation_keeps_first_step_active_and_discoverable ... ok
[INFO] [stdout] test helper_new_version_and_resume_failed_job_return_to_review_stage ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.18s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/job_runner_regression.rs (/opt/rustwide/target/debug/deps/job_runner_regression-1d48dcca4ca60ebc)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test queued_job_without_uid_finishes_failed_and_clears_runtime_state ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.17s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/oat_catalog_snapshots.rs (/opt/rustwide/target/debug/deps/oat_catalog_snapshots-3d9af5130e3f1e29)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test oat_locators_offline_snapshot_validation ... ok
[INFO] [stderr]      Running tests/payments_regression.rs (/opt/rustwide/target/debug/deps/payments_regression-45d68abbcf7fe514)
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test token_packs_catalog_stays_stable ... ok
[INFO] [stdout] test mercadopago_signature_rejects_invalid_manifest ... ok
[INFO] [stderr]      Running tests/prompts_v3_coverage.rs (/opt/rustwide/target/debug/deps/prompts_v3_coverage-ff3e6f0e1c738695)
[INFO] [stdout] test webhook_rejects_missing_data_id_before_provider_call ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test workshops_v3_prompts_are_present_and_non_empty ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/prompts_v5_coverage.rs (/opt/rustwide/target/debug/deps/prompts_v5_coverage-266df27dae45ae00)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test workshops_v5_prompts_are_present_and_non_empty ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/v5_architecture_guardrails.rs (/opt/rustwide/target/debug/deps/v5_architecture_guardrails-835c078dfc19c1af)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test production_v5_flow_does_not_import_legacy_modules_directly ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/workshop_helper_logic_regression.rs (/opt/rustwide/target/debug/deps/workshop_helper_logic_regression-ea7cb9ee8f0a06b0)
[INFO] [stdout] 
[INFO] [stdout] running 15 tests
[INFO] [stdout] test objetivos_secundarios_partial_valid_does_not_retry ... ok
[INFO] [stdout] test mandatory_activities_business_rule_requires_details_only_when_opted_in ... ok
[INFO] [stdout] test dua_step_is_auto_skipped_when_user_says_no ... ok
[INFO] [stdout] test mandatory_activities_step_is_auto_skipped_when_user_says_no ... ok
[INFO] [stdout] test instruments_per_session_rule_works ... ok
[INFO] [stdout] test objetivos_secundarios_off_topic_retries ... ok
[INFO] [stdout] test oat_levels_step_is_auto_skipped_when_user_says_no ... ok
[INFO] [stdout] test dua_business_rule_requires_details_only_when_opted_in ... ok
[INFO] [stdout] test oat_business_rule_works ... ok
[INFO] [stdout] test refresh_reconciles_current_step_after_auto_skip ... ok
[INFO] [stdout] test parse_instrumentos_written_distribution_works ... ok
[INFO] [stdout] test parse_instrumentos_auto_strategy_materializes_count ... ok
[INFO] [stdout] test refresh_keeps_needs_retry_state ... ok
[INFO] [stdout] test optional_no_maps_to_null ... ok
[INFO] [stderr]      Running tests/workshop_helper_session_flow.rs (/opt/rustwide/target/debug/deps/workshop_helper_session_flow-e86c90b8f08f3adc)
[INFO] [stdout] test validates_email ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 15 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test edit_step_from_review_clears_review_action_and_reopens_target_step ... ok
[INFO] [stdout] test review_generate_answer_makes_session_finalizable ... ok
[INFO] [stdout] test answer_rejects_when_step_id_does_not_match_current_step ... ok
[INFO] [stdout] test rebuilt_review_stage_is_not_finalizable_until_user_confirms_generation ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests rust_llm_api
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "3531e51bc86297de0b28a27a8d96695928529db615733eda8e74d3c80e17c0fa", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3531e51bc86297de0b28a27a8d96695928529db615733eda8e74d3c80e17c0fa", kill_on_drop: false }`
[INFO] [stdout] 3531e51bc86297de0b28a27a8d96695928529db615733eda8e74d3c80e17c0fa
